
#ifndef TJ_IR_REMOTER_H
#define TJ_IR_REMOTER_H

#include <stdint.h>

/*
    0xC0608004      0xDC8A98E7      0x60957901      0xECE8CF4C
    0x494C24FD		0x69DB70B0		0xED812442		0x75D47445
    0x4EDC7527		0x83A3A9EC		0xF1117146		0x7B64C46F
    0x59FAB386		0x8EC1E84F		0xFC2FAFA9		0x868302CE
    0xA7BA86C3		0xF08F2890		0x49EF82E2		0xD442D60B
    0x350B5E8C		0x797ACD89		0xD7405AAF		0x6193ADD4
    0xC1850842		0x859A6ED		0x65BA078B		0xEE0D578A
    0xCCA346A5		0x1777EB98		0x70D845EA		0xF92B95ED
    0xE3F3A007		0x8340B98C		0x86289C26		0x107BEF4F
    0x714477D0		0xC2C5E85		0x137973F3		0x9DCCC718
    0x8B0CB10C		0x11BCAEAF		0x2B41AA09		0xB7950054
    0x962AEF6F		0x1CDAED0E		0x3A5FEEB4		0xC2B33EB7
    0x60A2E9A6		0xFDF00009		0x4D7E8EF		0x8D2B38EE
    0xEDF3C173		0x8ADBAB4A		0x9228C0B8		0x1A7C10BB
    0x7C6D6E4F		0x1BBA87D4		0x1EA26A6E		0xA8F5BD97
    0x878BACAE		0x26D8C637		0x29C0A8D1		0xB413FBF6
    0x37D82F63		0x84A061C6		0xDA0D2B82		0x92FE9509
    0xC529072C		0x11F13993		0x675E034F		0x1FEA404A
    0xDEF14068		0x29B96FA9		0x7F263965		0x237A8D4E
    0xEA0F7ECB		0x38D7B454		0x8E447E10		0x2E98CBB1
    0x4BDCBF0C		0x96A4EE4D		0xEC11B809		0x7C589EEA
    0xD4C86405		0x2390998E		0x78FD634A		0x9A976B7
    0x63A73D69		0xB46F7618		0x9DC3FD4		0x98232393
    0x72C58214		0xBF8DB47B		0x14FA7E37		0xA34161F2
    0x9BFCCE22		0xEAC503AF		0x4031CD6B		0xFB233A14
    0x294DA5EF		0x7815DB78		0xCD82A534		0x840EDF0D
    0x4115DC05		0x91DE14B4		0xE74ADE70		0x899F2F37
    0x503420B0		0x9CFC5317		0xF2691CD3		0x94BD6D96
    0x1AAC1AEB		0x67744D4E		0xBCE1170A		0x75D28091
    0xA7FCF2B4		0xF4C5251B		0x4A31EED7		0x2BE2BD2
    0x34769C6A		0x833ED1F7		0xD8AB9BB3		0x939D085C
    0x3F94DACD		0x8E5D1056		0xE3C9DA12		0x9EBB46BF
*/

const uint32_t IRRCCodeList[32][4] = {
    {0xC0608004, 0xDC8A98E7, 0x60957901, 0xECE8CF4C},
    {0x494C24FD, 0x69DB70B0, 0xED812442, 0x75D47445},
    {0x4EDC7527, 0x83A3A9EC, 0xF1117146, 0x7B64C46F},
    {0x59FAB386, 0x8EC1E84F, 0xFC2FAFA9, 0x868302CE},
    {0xA7BA86C3, 0xF08F2890, 0x49EF82E2, 0xD442D60B},
    {0x350B5E8C, 0x797ACD89, 0xD7405AAF, 0x6193ADD4},
    {0xC1850842, 0x859A6ED, 0x65BA078B, 0xEE0D578A},
    {0xCCA346A5, 0x1777EB98, 0x70D845EA, 0xF92B95ED},
    {0xE3F3A007, 0x8340B98C, 0x86289C26, 0x107BEF4F},
    {0x714477D0, 0xC2C5E85, 0x137973F3, 0x9DCCC718},
    {0x8B0CB10C, 0x11BCAEAF, 0x2B41AA09, 0xB7950054},
    {0x962AEF6F, 0x1CDAED0E, 0x3A5FEEB4, 0xC2B33EB7},
    {0x60A2E9A6, 0xFDF00009, 0x4D7E8EF, 0x8D2B38EE},
    {0xEDF3C173, 0x8ADBAB4A, 0x9228C0B8, 0x1A7C10BB},
    {0x7C6D6E4F, 0x1BBA87D4, 0x1EA26A6E, 0xA8F5BD97},
    {0x878BACAE, 0x26D8C637, 0x29C0A8D1, 0xB413FBF6},
    {0x37D82F63, 0x84A061C6, 0xDA0D2B82, 0x92FE9509},
    {0xC529072C, 0x11F13993, 0x675E034F, 0x1FEA404A},
    {0xDEF14068, 0x29B96FA9, 0x7F263965, 0x237A8D4E},
    {0xEA0F7ECB, 0x38D7B454, 0x8E447E10, 0x2E98CBB1},
    {0x4BDCBF0C, 0x96A4EE4D, 0xEC11B809, 0x7C589EEA},
    {0xD4C86405, 0x2390998E, 0x78FD634A, 0x9A976B7},
    {0x63A73D69, 0xB46F7618, 0x9DC3FD4, 0x98232393},
    {0x72C58214, 0xBF8DB47B, 0x14FA7E37, 0xA34161F2},
    {0x9BFCCE22, 0xEAC503AF, 0x4031CD6B, 0xFB233A14},
    {0x294DA5EF, 0x7815DB78, 0xCD82A534, 0x840EDF0D},
    {0x4115DC05, 0x91DE14B4, 0xE74ADE70, 0x899F2F37},
    {0x503420B0, 0x9CFC5317, 0xF2691CD3, 0x94BD6D96},
    {0x1AAC1AEB, 0x67744D4E, 0xBCE1170A, 0x75D28091},
    {0xA7FCF2B4, 0xF4C5251B, 0x4A31EED7, 0x2BE2BD2},
    {0x34769C6A, 0x833ED1F7, 0xD8AB9BB3, 0x939D085C},
    {0x3F94DACD, 0x8E5D1056, 0xE3C9DA12, 0x9EBB46BF}};
/*
8B0CB10C	10BCAD1A	2B41AA09	B7950054	B76AA7E7	406148B5	41DF7C90	C832C96D
962AEF6F	1BDAEB7D	3A5FEEB4	C2B33EB7	C288E646	4F7F8D60	4CFDBAF3	D7510E18
EDF3C173	89DBA9B9	9228C0B8	1A7C10BB	3089A482	A7485F64	A4C68CF7	2F19E01C
60A2E9A6	F004C0	    4D7E8EF	    8D2B38EE	A39DF941	19F7879B	1775B52A	A1C90853
C0608004	DB8A9752	60957901	ECE8CF4C	8238921F	75B517AD	77334B88	FD869865
494C24FD	68DB6F1F	ED812443	75D47445	F8969E8	    2A0C2EE	    1EF081	    8A7243A6
4EDC7527	80A3A535	F1117146	7B64C46F	2951A324	6310FF2	    5AF40AB	    8E0290AA
59FAB386	8FC1E9E0	FC2FAFA9	868302CE	346FE187	114F4E55	10CD7F0A	9920CF0D
A7BA86C3	ED8F23D9	49EF82E2	D442D60B	963D21C8	5F0F218E	5E8D5247	E6E0A246
350B5E8C	7A7ACF1A	D7405AAF	6193ADD4	1F28C6C1	EC5FF95B	EBDE2A10	74317A13
C1850842	B59ABA4	    65BA078B	EE0D578A	AE07A025	7AD9A637	7857D3C6	2AB26EF
CCA346A5	1677EA07	70D845EA	F92B95ED	BD25E4D0	85F7E496	83761229	DC9654E
878BACAE	27D8C7C8	29C0A8D1	B413FBF6	CC86BF6F	3EE0477D	3E5E7832	C6B1C835
*/

const uint32_t HSIRRCCodeList[13][8] = {
    {0x8B0CB10C, 0x10BCAD1A, 0x2B41AA09, 0xB7950054, 0xB76AA7E7, 0x406148B5, 0x41DF7C90, 0xC832C96D},
    {0x962AEF6F, 0x1BDAEB7D, 0x3A5FEEB4, 0xC2B33EB7, 0xC288E646, 0x4F7F8D60, 0x4CFDBAF3, 0xD7510E18}, 
    {0xEDF3C173, 0x89DBA9B9, 0x9228C0B8, 0x1A7C10BB, 0x3089A482, 0xA7485F64, 0xA4C68CF7, 0x2F19E01C}, 
    {0x60A2E9A6, 0xF004C0,   0x4D7E8EF,  0x8D2B38EE, 0xA39DF941, 0x19F7879B, 0x1775B52A, 0xA1C90853}, 
    {0xC0608004, 0xDB8A9752, 0x60957901, 0xECE8CF4C, 0x8238921F, 0x75B517AD, 0x77334B88, 0xFD869865}, 
    {0x494C24FD, 0x68DB6F1F, 0xED812443, 0x75D47445, 0xF8969E8,   0x2A0C2EE, 0x1EF081,   0x8A7243A6}, 
    {0x4EDC7527, 0x80A3A535, 0xF1117146, 0x7B64C46F, 0x2951A324, 0x6310FF2,  0x5AF40AB,  0x8E0290AA}, 
    {0x59FAB386, 0x8FC1E9E0, 0xFC2FAFA9, 0x868302CE, 0x346FE187, 0x114F4E55, 0x10CD7F0A, 0x9920CF0D}, 
    {0xA7BA86C3, 0xED8F23D9, 0x49EF82E2, 0xD442D60B, 0x963D21C8, 0x5F0F218E, 0x5E8D5247, 0xE6E0A246}, 
    {0x350B5E8C, 0x7A7ACF1A, 0xD7405AAF, 0x6193ADD4, 0x1F28C6C1, 0xEC5FF95B, 0xEBDE2A10, 0x74317A13}, 
    {0xC1850842, 0xB59ABA4,  0x65BA078B, 0xEE0D578A, 0xAE07A025, 0x7AD9A637, 0x7857D3C6, 0x2AB26EF}, 
    {0xCCA346A5, 0x1677EA07, 0x70D845EA, 0xF92B95ED, 0xBD25E4D0, 0x85F7E496, 0x83761229, 0xDC9654E}, 
    {0x878BACAE, 0x27D8C7C8, 0x29C0A8D1, 0xB413FBF6, 0xCC86BF6F, 0x3EE0477D, 0x3E5E7832, 0xC6B1C835}  
};  

#endif